package com.vhall.component.entity.room.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonInclude;
import lombok.Data;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 接口描述
 * 获取直播房间的流量、宽带、pv、uv以及观看时长，以小时为单位进行统计
 * <p>
 * 使用场景
 * 该接口可用于房间每小时或天的PV、UV等数据指标的趋势变化图，以此来衡量直播间的浏览和观众数变化差值。
 *
 * <p>
 * 数据是 task 工程，com.vhall.component.tasks.StatNewTask#run
 * 0 0/30 * * * ? 每30分钟运行一次
 * 调用
 * 1 get-lives-room-use-info 【直播数据统计查询 > 获取直播属性信息】接口而来
 *
 * @author CodeGenerator
 * @date 2021-04-15 17:24:05
 */
@Data
@TableName("room_stats")
@JsonInclude(JsonInclude.Include.NON_NULL)
public class RoomStatsEntity implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(value = "id", type = IdType.AUTO)
    private Integer id;

    @TableField(value = "il_id")
    private Integer ilId;

    @TableField("account_id")
    private Integer accountId;

    @TableField("flow")
    private Long flow;

    @TableField("bandwidth")
    private Integer bandwidth;

    @TableField("pv_num")
    private Integer pvNum;

    @TableField("uv_num")
    private Integer uvNum;


    @TableField("duration")
    private Integer duration;

    @TableField("created_time")
    private LocalDateTime createdTime;

    @TableField("updated_at")
    private LocalDateTime updatedAt;

    @TableField("created_at")
    private LocalDateTime createdAt;

    @TableField("deleted_at")
    private LocalDateTime deletedAt;

    @TableField("room_id")
    private String roomId;

}